<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
    <script>
        var a;//var 就是说在当前作用域下申明一个变玲
            // var指令都会被提前到该作用域代码的最前

        console.log(a);//作用域---一个空间  就是说可以按照名称来查找变量
        
        console.log(b);                 // var b;
        var b=12;       //====>转化提升     console.log(b);  
        console.log(b);                 //b=12
                                        //console.log(b);   


        //函数提升 最高直接提到var 前面  函数声明指令会被提前到var指令之前
        console.log(c);                     //console.log(c);           function add(){                                          
        console.log(add);                   //console.log(add);             console.log(11211212);
        var c=12;                 //var提升   //var c;        函数         }
        function add(){             //=====>    c=12        ====>       var c;
            console.log(11211212);          //function add(){           console.log(c);  
        }                                   //console.log(11211212);    console.log(add);  
        //重复声明
        //重复的var声明会被忽略
        //因为var指令的作用就是新建一个变量/地址, 
        //那么我们既然已经有了这个地址, 那么就直接拿来用就行
                                //}                          c=12   
    </script>
</body>
</html>